Method and system for selection, filtering or presentation of available sales outlets

ABSTRACT

Embodiments disclosed herein provide systems and methods for the filtering, selection and presentation of vendors accounting for both user characteristics and vendor characteristics, such that the systems and methods may be used by both customer and vendor alike to better match customer needs with the resource-constrained vendors with whom a successful sale has a higher probability of occurring. Embodiments may include filtering, selecting and/or presenting vendors to a user sorted by the probability that the particular vendor will possess the characteristics that appeal to a particular customer and therefore result in a large probability of sale and suppress presentation of those vendors that are unlikely to be selected by the customer since their characteristics are less consistent with those needed by the customer and, therefore, are unlikely to result in a sale.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims a benefit of priority under 35 U.S.C. §119 toProvisional Application No. 61/504,017, filed Jul. 1, 2011, entitled“METHOD AND SYSTEM FOR SELECTION, FILTERING OR PRESENTATION OF AVAILABLESALES OUTLETS,” which is fully incorporated herein by reference in itsentirety.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material towhich a claim for copyright is made. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but reserves all other copyright rightswhatsoever.

TECHNICAL FIELD

This disclosure relates generally to the presentation of sales outletsto a customer. In particular, this disclosure relates to the selection,filtering and/or presentation of sales outlets, taking into account usercharacteristics as well as characteristics of such sales outlets.

BACKGROUND

There can be many types of sales outlets. One example of a sales outletcan be a retailer that sells a particular product or service. Anotherexample can be a vendor or supplier that provides goods and/or servicesto businesses or individuals. As a specific example, in a supply chain amanufacturer may manufacture products, sell them to a vendor, and thevendor may in turn sell a product to a consumer. In this context, theterm ‘vendor’ refers to the entity that sold the product to theconsumer.

Today, it is possible for a consumer to locate a vendor by browsingvarious websites associated with different vendors. Existing searchengines allow a consumer to search online for a desired product. Thesesearch engines then return a list of vendors, often in the form of ‘hotlinks’, to the consumer.

However, the search results can have varying degrees of relevance to thedesired product and/or the consumer. Consequently, there is always roomfor innovations as well as improvements.

SUMMARY OF THE DISCLOSURE

Consumers are becoming savvier. This is especially true in the contextof online purchasing, where research is easily accomplished. Consumershave therefore taken to searching for products or sales outlets (alsoreferred to as vendors, sellers, dealers, etc.) online before executinga purchase. As the popularity of searching for products or vendorsonline before a customer executes a purchase continues to grow, there isan increasing need to develop systems and methods for presentingcandidate vendors based on a user's preference. However, when a userseeks a vendor from which he/she can make a purchase of a product (whichmay be an onsite purchase or an online purchase), the candidate vendorsmay have characteristics that may cause the user to prefer some vendorsover others. In fact, certain characteristics may result in thelikelihood of sale for some vendors to be small, negligible, ornon-existent. Similarly, different features of a consumer may alsoresult in a difference in the probability of the consumer buying from aparticular vendor.

However, in the current realm of online commerce, effective systems andmethods for the filtering, selection or presentation (collectivelyreferred to as filtering) of vendors are lacking. Common approachesinclude listing all possible vendors (sometimes with an ability to sortby price, relevance, or other feature) or allowing the user to filterresults by price, distance, or other product attribute.

Additionally, vendors also experience similar prioritizationdifficulties as they receive large numbers of leads that often overwhelmthe resources available to pursue potential customers (usedinterchangeably herein with the term consumer). To efficiently identifythe consumers more likely to purchase the item in which they expressedinterest from those less likely to purchase, a ranking procedure forconsumers may also be needed.

Therefore, it is desired that systems and methods for the filtering,selection and/or presentation of vendors account for both usercharacteristics and vendor characteristics, such that the systems andmethods may be used by both consumers and vendors alike to better matchconsumer needs with the resource-constrained vendors with whom asuccessful sale has a higher probability of occurring. It is alsodesired that systems and methods for the filtering, selection andpresentation of vendors address the bilateral decision process bymatching highly interested consumer(s) to the correct and best vendor(s)according to the features from both sides.

Embodiments of systems and methods for the filtering, selection and/orpresentation of vendors may (a) present a ranked list of candidatevendors sorted by the probability that a particular vendor will possessthe characteristics that appeal to a particular consumer and thereforeresult in a higher probability of sale which may, in one embodiment,maximize an expected revenue for an intermediary and (b) suppresspresentation of those vendors that are unlikely to be selected by theconsumer since their characteristics are less consistent with thoseneeded by the consumer and, therefore, are unlikely to result in a sale.The same logic should be applied to vendors for selecting potentialcustomers as well. Therefore, this seeks to identify the ideal pairingof an online user and a vendor.

Embodiments of such systems and methods may also work in two directionsto filter based on vendors with high probability of sale to consumersand to select highly interested consumers to vendors. The filtering andsorting can be based on observed data based on aggregate behavior ofindividuals sharing search characteristics similar to those in the sameset, S (membership in S can be based on geographic proximity or othershared characteristics), searching for product t. Similarly, thealgorithm does not require vendor's pre-determined rules for customerselection, it use statistical modeling method by presenting the mostvaluable customer to vendors and saving vendor's resources and maximumvendors' expected revenue at the same time.

Embodiments as disclosed herein may have the advantages of taking intoaccount a richer set of vendor and user attributes and leveragingempirically-based information to compute a probability of closing a saleand to identify those features which are most heavily considered duringthe buying decision process. In particular, certain embodiments mayprovide the advantages of:

-   -   1) Empirically determining the probability of sale using        historical data, and    -   2) Not being limited to features related to distance, price, and        historical sales activity by including, for example, additional        factors like drive time, dealer density, available inventory,        perks, customer loyalty.

Some embodiments may further rank or filter the set of vendors based onan expected revenue.

For example, an embodiment may rank the set of vendors based on, foreach vendor within a geographic area, the probability of sale and anexpected revenue thus generated for yet another entity.

These, and other, aspects of the disclosure will be better appreciatedand understood when considered in conjunction with the followingdescription and the accompanying drawings. It should be understood,however, that the following description, while indicating variousembodiments of the disclosure and numerous specific details thereof, isgiven by way of illustration and not of limitation. Many substitutions,modifications, additions and/or rearrangements may be made within thescope of the disclosure without departing from the spirit thereof, andthe disclosure includes all such substitutions, modifications, additionsand/or rearrangements.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings accompanying and forming part of this specification areincluded to depict certain aspects of the disclosure. It should be notedthat the features illustrated in the drawings are not necessarily drawnto scale. A more complete understanding of the disclosure and theadvantages thereof may be acquired by referring to the followingdescription, taken in conjunction with the accompanying drawings inwhich like reference numbers indicate like features and wherein:

FIG. 1 depicts a simplified diagrammatic representation of one exampleembodiment of a system for presenting sales outlets;

FIG. 2 depicts a simplified diagrammatic representation of one examplenetwork architecture in which embodiments disclosed herein may beimplemented;

FIG. 3 depicts a diagrammatic representation of a flow diagram forpresenting sales outlets;

FIGS. 4, 5, 6 a and 6 b depict representations of screenshots utilizedfor presenting sales outlets;

FIG. 7 depicts a diagrammatic representation of one example embodimentof a method of presenting sales outlets to a customer;

FIG. 8 depicts a diagrammatic representation of one example embodimentof a method of generating a drive distance/time for zip code-dealerpairs; and

FIG. 9 depicts a diagrammatic representation of a screenshot displayedon a client device.

DETAILED DESCRIPTION

The invention and the various features and advantageous details thereofare explained more fully with reference to the nonlimiting embodimentsthat are illustrated in the accompanying drawings and detailed in thefollowing description. Descriptions of well-known starting materials,processing techniques, components and equipment are omitted so as not tounnecessarily obscure the invention in detail. It should be understood,however, that the detailed description and the specific examples, whileindicating preferred embodiments of the invention, are given by way ofillustration only and not by way of limitation. Various substitutions,modifications, additions and/or rearrangements within the spirit and/orscope of the underlying inventive concept will become apparent to thoseskilled in the art from this disclosure. Embodiments discussed hereincan be implemented in suitable computer-executable instructions that mayreside on a computer readable medium (e.g., a hard disk drive, flashdrive or other memory), hardware circuitry or the like, or anycombination.

Embodiments of the systems and methods disclosed herein may determinethe probability of sale given that a vendor is presented to an onlineuser interested in purchasing a product. This probability may be used inthe selection, filtering or presentation (collectively referred to asfiltering herein) of vendors to the user.

For example, in one embodiment the probability of sale, P_(s), from auser's perspective has two components:

-   -   1) A component reflecting various features of an individual        vendor and its product offering including price, available        inventory, perks offered by the vendor, historical sales        performance, etc.    -   2) A component reflecting the same features but expressed        relative to the other vendors that will also be co-displayed.

This process of filtering a list of vendors can be extended toadditionally benefit the vendors. The complementary action would be forvendors to apply a filter to a list of users who generated the onlineinterest and focus their attention on those users (potential customers)who have the higher probabilities of buying the product. This filtercould be used, for example, when the availability of a vendor'sresources (e.g., sales persons, email responders, etc.) available topursue interested users is insufficient to provide balanced attention toall the users for whom the vendor appeared in an online product search.

The probability of buying, P_(b), from a vendor's perspective may alsohave two components:

-   -   1) A component reflecting various demographic features of an        individual customer including income, family size, net worth,        their distance from the vendor, historical buying frequency,        historical buying preferences, etc.    -   2) Features describing the interactions of a particular customer        and a particular vendor including the vendor's historical sales        to that customer (a proxy for loyalty), historical sales to        others in the customer's local area/neighborhood, vendor's        location to that customer. In case of large, durable goods which        require buyer's onsite visit, the distance to the vendor is an        additional interaction factor for the customer.

The bilateral decision process can be combined into a single metric, theprobability of closing a sale:

P _(c) =f(P _(s) ,P _(b))

This probability can be used by customer and vendor alike to bettermatch customer needs with the resource-constrained vendors with whom asuccessful sale has a higher probability of occurring. Systems andmethods may thus provide a benefit to both users and vendors bysimplifying customer search time, increasing vendors' profit bypresenting “correct” products and services to their target customers,and allocating sales resources to customers more likely to yield a sale.

More specifically, according to certain embodiments the probability ofclosing a sale can be decomposed to two parts as probability of sell toa customer and probability of buy from a vendor. From a customer'sperspective, the probability of vendor i sell product t given they werepresented in a set of other vendors, S, is computed based on a logisticregression equation of the form:

$P_{s} = {P_{i,t,s} = \frac{1}{1 + ^{- \theta_{i,t,S}}}}$

where

-   -   θ_(i,t,s)=β₀+β₁X_(i,t,1)+β₂X_(i,t,2)+ . . .        +β_(m)X_(i,t,m)+β_(q)X_(i,t,S,q)+β_(q+1)X_(i,t,S,q+1)+ . . .        +β_(r)X_(i,t,S,r)+ε_(i,t,S),    -   each X_(i,t,k) (k=l, . . . , m) reflects a feature of vendor i        with respect to product t    -   each X_(i,t,S,q) (q=m+l, . . . , r) reflects a feature of vendor        i with respect to product t and the other vendors presented        along with vendor i in set S.

From vendor i's perspective, the probability of customer c making apurchase on product t from the vendor can be computed by the logisticregression equation of:

$P_{b} = {P_{c,t,i} = \frac{1}{1 + ^{- \delta_{c,t,i}}}}$

where

-   -   δ_(c,t,i)=α₀+α₁Y_(c,t,1)+α₂Y_(c,t,2)+ . . .        +α_(n)Y_(c,t,n′)+α_(q)Y_(c,i,q′)+α_(q+1)Y_(c,i,q+1)+ . . .        +α_(r)Y_(c,i,r′)+ε_(c,t,U),    -   each Y_(c,t,k) (k′=l, . . . , n′) reflects a feature of customer        c interested in product t    -   each Y_(c,i,q) (q′=n+l, . . . , r′) reflects a feature of        customer c's historical buying behavior from vendor i.

Rather than consider each component separately and because the bilateraldecision process implies interaction between the buyer and seller, insome embodiments, a single value can be computed that considers thematch of customer and vendors based on the logistic function:

$P_{c} = {{f\left( {P_{s},P_{b}} \right)} = \frac{1}{1 + ^{- {({\theta_{i,t,S} + \delta_{c,t,i}})}}}}$

Logistic regression is a statistical method used for prediction of theprobability of occurrence of an event by fitting data to a logicfunction. It is an empirically-based statistical method for modelingbinomial outcome (sale vs. no sale).

Independent variables reflecting 1) individual vendor features, 2)individual vendor features relative to other vendors, 3) individualcustomer features, and 4) customer's historical preference may beproposed as potential factors based on empirical knowledge of theirrelationship with closing a sale.

In some embodiments, data transformations may be used for variables withlarge variance or skewed distribution. Missing values may be imputedbased on appropriate estimates such as using local average of historicaldata. In some embodiments, forward, backward and stepwise modelselection procedures available in statistical analysis software (SASProc Logistic, for example) may be used to select independent variables.Rescaled or additional derived variables can also be defined in order toreduce the variance of certain variables and increase the robustness ofcoefficient estimates. The final model coefficients may be chosen suchthat the resulting estimate probability of sale is consistent with theactual observed sales actions given the vendors displayed historically.

In one embodiment, cross-validation can be performed to test theconsistency of the model estimates. The final dataset is randomly splitinto two groups for refitting the model. The purpose of this is to testif the model estimates are robust among different sampling groups. Dueto changes in market environment, customer behaviors, dealer featuresover time, the final model may also be subject to other type of crossvalidation. For example, if the final model data source is collected ina long time interval, the final dataset can be split to half by time.The final model will then be refitting to the both “before” and “after”sample to test the consistency of coefficients over time.

It will be apparent that there is a wide variety of uses for such amodel and algorithms. For example, in one embodiment, such models andalgorithms can be used in a Vendor Score Algorithm (VSA) or computation(also known as a “Dealer Scoring Algorithm” (DSA), the term vendor anddealer will be used interchangeably herein) which can be used to select,filter or present vendors in response to a user-submitted productsearch. For example, after a user specifies his/her geographic location(e.g., ZIP Code or address) and desired product, the VSA can identifyall vendors in the user's local area that sell that particular product.The VSA can then rank the eligible vendors and present those with thehighest probability of sale to the user. The VSA algorithm couldincorporate, for example, price-distance tradeoff, vendor satisfaction,historical performance, inventory features, and network features to geta probability of closing a sale to customer from a certain geographicarea. Such a VSA may be used in a variety of customer contexts, in avariety of channels or with a variety of types of products or services.

While embodiments of systems and methods may be usefully applied to thesearching or purchasing of almost any product or service where purchasesand searching is accomplished online or offline, embodiment may beespecially useful in the context of online searching or purchasing ofnew cars. More specifically, in certain embodiments, such a VSA may beused to filter online searches for vendors. More particularly in certainembodiments, such a VSA may be used in the context of online carsearching to filter online searches for new cars or vendors based on theprobability of closing a sale.

For example, TrueCar (www.truecar.com) is an automotive website thatprovides competitive, upfront price quotes. Embodiments of the systemsand method disclosed herein may be used by such a website in a dealerselection process to filter and present dealers (e.g., 3 selecteddealers) that most likely to yield a sale in the TrueCar network inresponse to a user-submitted upfront pricing search. In certainembodiments, only leads from customers with high probability of buyingwill be sent to the dealer. In this embodiment, a DSA may incorporatevarious dealer features such as dealer price, drive distance, drive timefrom dealer to customer ZIP code, dealer perks, historical performance,dealer location, defending champion and inventory. Some rescaledvariables may be further derived from dealer features to reflectingthose characteristics compared to other candidate dealers. Customerattributes such as searched vehicle make, customer local area dealernetwork density and ZIP code level customer historical buying behaviorindicator like number of sale in searched ZIP code are included to modelthe probability of buying for a unique customer to buy from dealerscompared to other users. Each dealer's expected revenue can be furthercalculated by combined information from probability of sale of the DSAmodel, local demand and dealer's inventory data.

It may be helpful here to give the context of the use of embodiments ofsystems and methods presented herein. It will be helpful to anunderstanding of these embodiments to review the methods and systemsillustrated U.S. patent application Ser. No. 12/556,137, entitled“SYSTEM AND METHOD FOR SALES GENERATION IN CONJUNCTION WITH A VEHICLEDATA SYSTEM,” filed Sep. 9, 2009, which is fully incorporated herein byreference in its entirety. Using the TrueCar website each user entershis/her ZIP Code and the desired make/model/options for the vehicle theyare interested in pricing. In one embodiment, a DSA may be used topresent 3 TrueCar Certified Dealers and will only show non-CertifiedDealers for some programs. Examples of the screens viewable by a userare shown in FIGS. 4, 5, 6 a, and 6 b, described below.

Turning now to FIG. 1 which depicts a simplified diagrammaticrepresentation of example system 100 comprising entity computingenvironment or network 130 of an online solution provider. Asillustrated in FIG. 1, user 110 may interact (via a client devicecommunicatively connected to one or more servers hosting Web site 140)with Web site 140 to conduct their product research, and perhapspurchase a new or used vehicle through Web site 140. In one embodiment,the user's car buying process may begin when the user directs a browserapplication running on the user's computer to send a request over anetwork connection (e.g., via network 120) to Web site 140. The user'srequest may be processed through control logic 180 coupled to Web site140 within entity computing environment 130.

An example of the user's computer or client device can include a centralprocessing unit (“CPU”), a read-only memory (“ROM”), a random accessmemory (“RAM”), a hard drive (“HD”) or storage memory, and input/outputdevice(s) (“I/O”). I/O can include a keyboard, monitor, printer, and/orelectronic pointing device. Example of an I/O may include mouse,trackball, stylist, or the like. Further, examples of a suitable clientdevice can include a desktop computer, a laptop computer, a personaldigital assistant, a cellular phone, or nearly any device capable ofcommunicating over a network.

Entity computer environment 130 may be a server having hardwarecomponents such as a CPU, ROM, RAM, HD, and I/O. Portions of the methodsdescribed herein may be implemented in suitable software code that mayreside within ROM, RAM, HD, database 150, model(s) 190 or a combinationthereof. In some embodiments, computer instructions implementing anembodiment disclosed herein may be stored on a digital access storagedevice array, magnetic tape, floppy diskette, optical storage device, orother appropriate computer-readable storage medium or storage device. Acomputer program product implementing an embodiment disclosed herein maytherefore comprise one or more computer-readable storage media storingcomputer instructions translatable by a CPU to perform an embodiment ofa method disclosed herein.

In an illustrative embodiment, the computer instructions may be lines ofcompiled C⁺⁺, Java, or other language code. Other architectures may beused. For example, the functions of control logic 180 may be distributedand performed by multiple computers in enterprise computing environment130. Accordingly, each of the computer-readable storage media storingcomputer instructions implementing an embodiment disclosed herein mayreside on or accessible by one or more computers in enterprise computingenvironment 130. The various software components and subcomponents,including Web site 140, database 150, control logic 180, and model(s)190, may reside on a single server computer or on any combination ofseparate server computers. In some embodiments, some or all of thesoftware components may reside on the same server computer.

In some embodiments, control logic 180 may be capable of determining aprobability of closing a sale based in part on a portability of a vendor125 i selling a product to a customer and the probability of thecustomer buying the product from a specific vendor 125 i. In someembodiments, information about dealers and vendors 125 i known tocontrol logic 180 may be stored on database 150 which is accessible bycontrol logic 180 as shown in FIG. 1.

Control logic 180 can be configured to filter, select, and present alist of vendors 125 i with a high probability of closing a sale to acustomer utilizing model(s) 190. Model(s) 190 may be based in part onthe portability of a vendor 125 i to sell a product to a customer andthe portability of a customer buying the product from vendor 125 i thatmay utilize information from a plurality of system components, includingdata from a list of available dealers and their performance history fromdatabase 150 and/or dealers, information associated with users stored indatabase 150, and/or information associated with vendors 125 a-n storedin database 150.

FIG. 2 depicts one embodiment of a topology 200 which may be used toimplement embodiments of the systems and methods disclosed herein.Specifically, topology 200 comprises a set of entities including entitycomputing environment 220 (also referred to herein as the TrueCarsystem) which is coupled through network 270 to computing devices 210(e.g. computer systems, personal data assistants, kiosks, dedicatedterminals, mobile telephones, smart phones, etc.,), and one or morecomputing devices at inventory companies 240, original equipmentmanufacturers (OEM) 250, sales data companies 260, financialinstitutions 282, external information sources 284, departments of motorvehicles (DMV) 280 and one or more associated point of sale locations,in this embodiment, vendors 230.

Network 270 may comprise, for example, a wireless or wirelinecommunication network such as the Internet or wide area network (WAN),publicly switched telephone network (PTSN), or any other type ofelectronic or non-electronic communication link such as mail, courierservices or the like.

Entity computing environment 220 may comprise one or more computersystems with central processing units executing instructions embodied onone or more computer readable media where the instructions areconfigured to perform at least some of the functionality associated withembodiments of the present invention. These applications may include avehicle data application 290 comprising one or more applications(instructions embodied on a computer readable media) configured toimplement an interface module 292, data gathering module 294 andprocessing module 296. Furthermore, entity computing environment 220 mayinclude data store 222 operable to store obtained data 224 such asdealer information, dealer inventory and dealer upfront pricing; data226 determined during operation, such as a quality score for a dealer;models 228 which may comprise a set of dealer cost model or price ratiomodels; or any other type of data associated with embodiments ordetermined during the implementation of those embodiments.

More specifically, in one embodiment, data stored in data store 222 mayinclude a set of dealers with corresponding dealer information such asthe name and location of a dealer, makes sold by the dealer, etc. Datain data store 222 may also include an inventory list associated witheach of the set of dealers which comprises the vehicle configurationscurrently in stock at each of the dealers.

Entity computing environment 220 may provide a wide degree offunctionality including utilizing one or more interfaces 292 configuredto for example, receive and respond to queries or searches from users atcomputing devices 210; interface with inventory companies 240,manufacturers 250, sales data companies 260, financial institutions 270,DMVs 280 or dealers 230 to obtain data; or provide data obtained, ordetermined, by entity computing environment 220 to any of inventorycompanies 240, manufacturers 250, sales data companies 260, financialinstitutions 282, DMVs 280, external data sources 284 or vendors 230. Itwill be understood that the particular interface 292 utilized in a givencontext may depend on the functionality being implemented by entitycomputing environment 220, the type of network 270 utilized tocommunicate with any particular entity, the type of data to be obtainedor presented, the time interval at which data is obtained from theentities, the types of systems utilized at the various entities, etc.Thus, these interfaces may include, for example web pages, web services,a data entry or database application to which data can be entered orotherwise accessed by an operator, or almost any other type of interfacewhich it is desired to utilize in a particular context.

In general, through these interfaces 292, entity computing environment220 may obtain data from a variety of sources, including one or more ofinventory companies 240, manufacturers 250, sales data companies 260,financial institutions 282, DMVs 280, external data sources 284 orvendors 230 and store such data in data store 222. This data may be thengrouped, analyzed or otherwise processed by entity computing environment220 to determine desired data 226 or model(s) 228 which are also storedin data store 222.

A user at computing device 210 may access the entity computingenvironment 220 through the provided interfaces 292 and specify certainparameters, such as a desired vehicle configuration. Entity computingenvironment 220 can select or generate data using the processing module296. A list of vendors 230 can be generated from the selected data set,the data determined from the processing and presented to the user at theuser's computing device 210. More specifically, in one embodimentinterfaces 292 may visually present this data to the user in a highlyintuitive and useful manner.

In particular, in one embodiment, a visual interface may present atleast a portion of the selected data set as a price curve, bar chart,histogram, etc. that reflects quantifiable prices or price ranges (e.g.,“average,” “good,” “great,” “overpriced” etc.) relative to referencepricing data points (e.g., invoice price, MSRP, dealer cost, marketaverage, internet average, etc.). The visual interface may also includea list of vendors 230 with the highest probability of closing a salebased in part on a probability of sale from a customer's perspective anda probability of buying from a vendor's perspective.

Turning to the various other entities in topology 200, vendor 230 may bea retail outlet for vehicles manufactured by one or more of OEMs 250. Totrack or otherwise manage sales, finance, parts, service, inventory andback office administration needs vendor 130 may employ a dealermanagement system (DMS) 232. Since many DMS 232 are Active Server Pages(ASP) based, transaction data 234 may be obtained directly from the DMS232 with a “key” (for example, an ID and Password with set permissionswithin the DMS system 232) that enables data to be retrieved from theDMS system 232. Many vendors 230 may also have one or more web siteswhich may be accessed over network 270.

Additionally, a vendor's current inventory may be obtained from a DMS232 and associated with that dealer's information in data store 222. Avendor 230 may also provide one or more upfront prices to operators ofentity computing environment 220 (either over network 170, in some otherelectronic format or in some non-electronic format). Each of theseupfront prices may be associated with a vehicle configuration such thata list of vehicle configurations and associated upfront prices may beassociated with a vendor 230 i in data store 222.

Inventory companies 240 may be one or more inventory polling companies,inventory management companies or listing aggregators which may obtainand store inventory data from one or more of vendors 130 (for example,obtaining such data from DMS 232). Inventory polling companies aretypically commissioned by the vendor to pull data from a DMS 232 andformat the data for use on websites and by other systems. Inventorymanagement companies manually upload inventory information (photos,description, specifications) on behalf of the vendor. Listingaggregators get their data by “scraping” or “spidering” websites thatdisplay inventory content and receiving direct feeds from listingwebsites (for example, Autotrader, FordVehicles.com).

DMVs 280 may collectively include any type of government entity to whicha user provides data related to a vehicle. For example, when a userpurchases a vehicle it must be registered with the state (for example,DMV, Secretary of State, etc.) for tax and titling purposes. This datatypically includes vehicle attributes (for example, model year, make,model, mileage, etc.) and sales transaction prices for tax purposes.

Financial institution 282 may be any entity such as a bank, savings andloan, credit union, etc. that provides any type of financial services toa participant involved in the purchase of a vehicle. For example, when abuyer purchases a vehicle they may utilize a loan from a financialinstitution, where the loan process usually requires two steps: applyingfor the loan and contracting the loan. These two steps may utilizevehicle and consumer information in order for the financial institutionto properly assess and understand the risk profile of the loan.Typically, both the loan application and loan agreement include proposedand actual sales prices of the vehicle.

Sales data companies 260 may include any entities that collect any typeof vehicle sales data.

For example, syndicated sales data companies' aggregate new and usedsales transaction data from the DMS 232 systems of particular vendors230. These companies may have formal agreements with vendors 130 thatenable them to retrieve data from the dealer 230 in order to syndicatethe collected data for the purposes of internal analysis or externalpurchase of the data by other data companies, dealers, and OEMs.

Manufacturers 250 are those entities which actually build the productssold by vendors 230. In order to guide the pricing of their products,such as vehicles, the manufacturers 250 may provide an Invoice price anda Manufacturer's Suggested Retail Price (MSRP) for both vehicles andoptions for those vehicles—to be used as general guidelines for thedealer's cost and price. These fixed prices are set by the manufacturerand may vary slightly by geographic region.

External information sources 284 may comprise any number of othervarious source, online or otherwise, which may provide other types ofdesired data, for example data regarding vehicles, pricing,demographics, economic conditions, markets, locale(s), consumers, etc.

It should be noted here that not all of the various entities depicted intopology 200 are necessary, or even desired, in embodiments of thepresent invention, and that certain of the functionality described withrespect to the entities depicted in topology 100 may be combined into asingle entity or eliminated altogether. Additionally, in someembodiments other data sources not shown in topology 200 may beutilized. Topology 200 is therefore exemplary only and should in no waybe taken as imposing any limitations on embodiments of the presentinvention.

Before delving into details of various embodiments, it may be helpful togive a general overview with respect to the above described embodimentof a topology, again using the example commodity of vehicles. At certainintervals then, entity computing environment 220 may obtain by gatheringdata from one or more of inventory companies 240, manufacturers 250,sales data companies 260, financial institutions 282, DMVs 280, externaldata sources 284 or vendors 230. This data may include sales or otherhistorical transaction data for a variety of vehicle configurations,inventory data, registration data, finance data, vehicle data, upfrontprices from dealers, etc. (the various types of data obtained will bediscussed in more detail later). This data may be processed to yielddata sets corresponding to particular vehicle configurations.

At some point then, a user at a computing device 210 may access entitycomputing environment 220 using one or more interface 292 such as a setof web pages provided by entity computing environment 220. Using thisinterface 292 a user may specify a vehicle configuration by definingvalues for a certain set of vehicle attributes (make, model, trim, powertrain, options, etc.) or other relevant information such as ageographical location. Information associated with the specified vehicleconfiguration may then be presented to the user through interface 292.This information may include pricing data corresponding to the specifiedvehicle and upfront pricing information and/or a list of vendors 230 iwith the highest probability of closing.

In particular, the list of vendors 230 i with the highest probability ofclosing a sale may be determined and presented to the user on computingdevice 210 in a visual manner. In further example embodiments, a list ofvendors 230 i with the likelihood of producing the highest revenue to aparent organization associated with entity computing environment 220 maybe presented to the user. The revenue to the parent organization may bebased in part in the probability of closing a sale along with a revenuefactor.

Turning now to FIG. 3, one embodiment of a method for determiningvendors to be presented to a user is depicted. At step 310, aprobability of a specific vendor selling a product (P_(s)) to a userinterested in purchasing the product given that the vendor is presentedin a set of vendors may be determined. In one embodiment, for example, aprobability of the specific vendor selling a product (P_(s)) to the usermay include two components. A first component may reflect variousfeatures of the specific vendor, and a second component may reflect thesame features as the first component but expressed relative to othervendors within a set of vendors.

At step 320, a probability of the user buying the product from thevendor (P_(b)) given a historical preference of the user may bedetermined. In one embodiment, for example, the probability of the userbuying the product from the vendor (P_(b)) may include two components. Afirst component may reflect various demographic features of anindividual customer, while a second component may reflect interactionsof the individual customer and a particular vendor.

At step 330, a probability of closing a sale (P_(s)) for each vendorwithin the set may be determined, where (P_(s)) is a function of (P_(s))and (P_(b)). As discussed above, this bilateral decision process can beexpressed as:

P _(c) =f(P _(s) ,P _(b))

At step 340, one or more vendors from the set of vendors is selectedbased on the (P_(c)) associated with each vendor. The probability ofclosing a sale (P_(c)) may be used by the customer and the vendors tobetter match a customer's needs with vendors with whom a successful salehas a higher probability of occurring. In further example embodiments,the one or more vendors from the set of vendors may be selected based onan expected revenue factor of each vendor.

At step 350, the one or more selected vendors may be presented to theuser interested in purchasing the product via a user interface on a userdevice associated with the user. By presenting the one or more selectedvendors to the user, only a subset of the original set may be presentedto the user. Thus, by displaying only the vendors with the highestlikelihood to complete, a benefit to both users and vendors may simplifya customer's search time while increasing vendor's profits.

FIG. 4 depicts one embodiment of an interface 400 provided by theTrueCar system for the presentation of upfront pricing information 420for a specified vehicle configuration to a user in conjunction with thepresentation of pricing data for that vehicle configuration. Withininterface 400 a user may be able to enter information related to aspecific make and/or model for a vehicle. Within interface 400 the usermay also enter geographic information such as a zip code associated withthe user. In return, the TrueCar.system may generate price report 410and present same to the user via interface 400.

Price report 410 may comprise Gaussian curve 430 which illustrates anormalized distribution of pricing (for example, a normalizeddistribution of transaction prices). On the curve's X-axis, the averageprice paid may be displayed along with the determined dealer cost,invoice or sticker price to show these prices relevancy, and relation,to transaction prices. The determined “good,” “great,” “overpriced,”etc. price ranges are also visually displayed under the displayed curveto enable the user to identify these ranges.

In addition, pricing information 420 may be displayed as a visualindicator on the x-axis such that a user may see where this pricinginformation 420 falls in relation to the other presented prices or priceranges within the geographic region.

FIG. 5 depicts an embodiment of an interface 500 for the presentation ofdealer information associated with pricing information. Interface 500may be representative of the top three dealers 520, 530, 540 for aspecific make and model of a vehicle 510 (2010 Ford Explorer RWD 4DR XLTnear ZIP code 02748) after a “locate dealer” button is clicked. For eachdealer interface 500 may comprise dealer information, pricing data,vehicle configuration data, and instructions for obtaining an offeredupfront price from the dealer for a specific make and model of a vehicle510.

Based in part of the make and model of the vehicle 510, interface 500may present a user who is interested in purchasing vehicle 510 with oneor more vendors 510, 520, 530. The one or more vendors 510, 520, 530 maybe determined and/or selected based in part on a probability of closinga sale associated with each vendor within a set of vendors.

Interface 500 may also include forms 550 where a user may enter personalinformation such as a name, address, and contact information of theuser. The personal information of the user may be used to moreaccurately or efficiently determine the probability of a vendor closinga sale.

Referring to FIGS. 6A and 6B, upon entering personal information, theidentities of the rated (using, at least in part, an embodiment of aDSA) dealers 610, 620, 630 are displayed or presented to the potentialcustomer via interface 600 along with the price guarantee and any dealerperks (note in FIG. 6B that Colonial Ford has two perks listed: freelocal delivery and express checkout).

Some embodiments of a DSA are illustrated in patent application Ser. No.12/655,462, filed Dec. 30, 2009, entitled “SYSTEM, METHOD AND COMPUTERPROGRAM PRODUCT FOR PREDICTING VALUE OF LEAD,” which is fullyincorporated herein by reference in its entirety. It will be useful hereto go into more details about how one such embodiment of a DSA for usein such a context may be implemented.

a. Data Description

1) DSA Data

Based on, for example, data collected from September 2010 to April 2011,there are total of 82,994 non-mismatch sale and 18,296 mismatch sales. Amismatch sale is a sale from customer that did submit lead(s) but didnot submit a lead to the sale dealer, either by choice or because theDSA did not choose to present that dealer. In one embodiment, mismatchesare identified by comparing the dealer identification codes that werelisted in the top 3 with the dealer identification code of the seller.If the selling dealer is not in the top 3, then a mismatch has occurred.

Since the historical dealer close rate and other dealer performancevariables are calculated using 45 days moving window. Only sales thathappen after than Oct. 15, 2010 are included in the final model sample.634,185 observations and 81,016 sales are used in the final model. Dueto the lack of price offset information of mismatch sale dealer, we onlyinclude 4,263 mismatches (5.3%) out of 81,016 sales that price offsetsare available in the final model. Non-mismatch is defined as those salecases that happened to one of the three recommended dealers based on aDSA. Mismatch cases are defined as cases that happened to other dealersthat were not recommended by a DSA in the top 3 places or those casesthat sale dealer was displayed but no lead was generated.

A cohort can be a vendor list in response to a single user query. Anexample of a cohort is a list of DSA candidate dealers who are availableto sell the vehicle requested in a distinct user query. In oneembodiment, three dealers within a cohort are selected for display to auser. In one embodiment, cohorts with leads less than 15 days old mayalso be excluded since the leads take time to convert into sales andthose leads may be excluded to prevent underestimate the close rate ofdealers.

2) Drive Distance Data

Drive distance and drive time of search ZIP to dealer location areobtained from mapquest.com. In case of missing values; the drivedistance and drive time value are imputed based on the average drivedistance and great circle distance ratio for similar an nearby ZIPcodes.

3) Dealer Inventory Data

Dealers' new car inventory information can obtained from data feedsprovided by dealers.

b. Features

In one embodiment, at least four types of features may be considered inthe calculation of probability of closing in this algorithm.

1) Features Describing the Individual Vendor (X_(i,t))

Each vendor has certain special characteristic that may cause the userto prefer one over others. Those specific factors including vendor'sprice, available inventory, services and perks, historical performance,etc.

Price always plays a big role on sale in a competitive market. The priceoffset differ from the invoice price of the vehicle is considered as animportant factor in the DSA model. In order to reduce the big pricevariance of different vehicles, the price offset as a percentage ofinvoice prices is used as the main price variable in the model. Forthose dealers that do not provide an upfront price or with excludingprice, a program max value is used for their price offset. A program maxvalue may be the upper bound for price offset set by a particularprogram. Once the upfront price for a dealer is larger than the programmax, the program max may be displayed to the user instead dealer'sprice. Furthermore, some dealers do not provide the price offset forcertain trims; those cases are considered as excluding price. Theprogram max is used for display when the dealer has excluding price.

In one embodiment, the DSA model incorporates dealers' overall new carinventory as a factor in the model because customers have indicated thatvehicle unavailability is a big cause of mismatch sale or failing toclose a sale. Customers may complain if they are not able to get theexact cars they want on the price certification when they go to thedealers. Therefore, the new car inventory value is introduced as avariable to measure the overall dealership size. It is reasonable toassume that a large dealership will have a higher probability to havethe searched vehicle than a small dealership. So far, there is less than100% new car inventory data available for all dealers, dealers who donot provide inventory information are assigned average value ofinventory in the candidates dealer list for each cohort.

Besides the vehicle itself, car buyers also consider the warranty,maintenance and other services during their decision making. A websiteusing embodiments of a DSA may display dealer's special services alongwith their upfront price and location in the search result. Therefore,whether the dealer provides special services is also considered as apotential factor that might influence the probability of closing a sale.A “perks” dummy variable is defined as “1” if the dealer provides anyone of the following service such as limited warranty, money backguarantee, free scheduled maintenance, quality inspection, delivery,free car wash, and “0” otherwise.

Probability of sale is also highly related to the historical performanceof a dealer. Dealers with excellent sale persons and a good reputationshould have higher close rates than others. Those factors are measuresby their historical close rates. In one embodiment, a DSA modelcalculates the close rate for each dealer based on their performance inprevious 45 days. 45 days may be chosen as the moving window because itis a medium length time window that will provide a dealer's historicalperformance but also can quickly reflect the changes of the overallvehicle market due to factors such as gas price change or new modelrelease. See equation 1 below for details of calculation of dealer closerate. Since some dealers only take leads from those zips that locate 60miles or closer. The close rate is only based on the sales and leadswithin 60 miles drive distance. When close rate is missing due to nosale or no leads in the past 45 days, designated market area (DMA)average or any other geographic boundary average close rate is used.

$\begin{matrix}{{{Dealer}\mspace{14mu} {close}\mspace{14mu} {rate}} = \frac{\left( {{Count}\mspace{14mu} {of}\mspace{14mu} {sales}\mspace{14mu} {in}\mspace{14mu} {last}\mspace{14mu} 45\mspace{14mu} {days}} \right)}{\begin{pmatrix}{{{Count}\mspace{14mu} {of}\mspace{14mu} {sales}\mspace{14mu} {in}\mspace{14mu} {last}\mspace{14mu} 15\mspace{14mu} {days}} +} \\{{Count}\mspace{14mu} {of}\mspace{14mu} {leads}\mspace{14mu} {in}\mspace{14mu} {last}\mspace{14mu} 30\mspace{14mu} {days}}\end{pmatrix}}} & {{EQ}.\mspace{14mu} (1)}\end{matrix}$

In order to better predict the inventory status of a dealership and putmore weight on dealer's most recent performance, one more variable“defending champion” may be added to the model as another type ofperformance measured variable. The defending champion assigns a higherweight on a recent sale than a sale that is far away. For instance,dealers will get more credits if they made a success sale yesterday thana sale that is 30 days ago. It is assumed that the dealers have recentlymade a sale for a make will have a higher chance to have similar cars intheir inventory than dealers who have not made a sale for a certain timeperiod.

The vehicle make is another dealer feature that might affect theprobability of closing a sale.

Different makes might have different probability function. In oneembodiment of the DSA algorithm, for example, Mercedes-Benz dealers showa different pattern compared to other makes and the close rate forMercedes-Benz dealers is relatively high compared to network dealersthat sold other makes.

2) Features of Individual Vendor Compared to Other Vendors (X_(i,t,S))

The absolute value of individual vendor's attributes may not reflect itsadvantage or competitiveness. Those features may be ascertained througha comparison to other vendors. Therefore, vendor features relative toother competitors are important factors in predicting the probability ofsale in our algorithm.

In one embodiment of the DSA algorithm, most of the individual dealerfeatures such as drive time, price offset; historical close rate,inventory and defending champion are all rescaled among all thecandidate dealers within each cohort. Individual dealer's historicaldealer close rate, new car inventory are rescaled using the followingequation

$x_{i} = {\frac{\left( {x_{i} - {\min\limits_{i}x}} \right)}{\left( {{\max\limits_{i}x} - {\min\limits_{i}x}} \right)}.}$

Drive time, defending champion, price are rescaled using a differentequation:

$x_{i = 1} - \frac{\left( {x_{i} - {\min\limits_{i}x}} \right)}{\left( {{\max\limits_{i}x} - {\min\limits_{i}x}} \right)}$

All the rescaled variables can range from 0 to 1. Different equation maybe used when rescaling the variables because it may be desired to getvalue 1 to the best dealers for all the dealer features. For example,the dealer with highest historical close rate can get a rescaled closerate 1 and the dealer with lowest close rate can get a value of 0.Similarly, the dealer with the minimum drive time can get a value of 1and the dealer with maximum drive time can get a value of 0.

Dummy variables indicate best price, closest dealers are included aswell to compare the dealer's price and distance relative to others.Additional variable(s) to measure the absolute difference of price anddrive time may be constructed to adjust their effects on sale for thosecases that the maximum and minimum values do not significantly differ.

Network dealer density is another factor related to dealer i (a type ofvendor) itself and other dealer close to dealer j. Each dealer needs tocompete with others in a high dealer density area and will be dominantin a low dealer density area. In one embodiment, this make and dealerdensity interaction may only be accounted for at the same make level.However, it is possible that the dealer with similar makes (e.g. Nissanand Honda) will be competitors as well.

3) Features Describing Individual Customer (Y_(c,t))

The demographic features of individual customer may result in differentinterests on products and buying the same products from differentvendors. Those factors can include income, family size, net worth,gender, historical purchase behavior, etc. Those user data can beobtained from public data source such as U.S. census data or online userdatabase for different industries.

In one embodiment of a DSA algorithm, searched vehicle make and customerlocal dealer density are included in predicting the probability ofbuying (P_(b)) for a particular cohort. Customers' choice of vehiclemake is a potential indicator of customer's income, family size. It ishighly possible that people purchasing luxury cars are less sensitive toprice and more sensitive to drive time. In this case, the DSA algorithmcan put more weight on distance when the customer comes from a highincome ZIP code to increase the probability of closing (P_(c)). It mayalso be assumed that price is more important on sale for customerlocated in a large city with high dealer density while distance is moreimportant for people in rural area with only 2 dealerships availablewithin 200 miles. Count of available dealers within certain drive timeradius is used as customer local dealer density variable. Dummy variablefor each make are included in the model selection process usingstatistical software (SAS Proc logistic, for example), three out of 35makes (Mercedes-Benz, Mazda, Volkswagen) result in significant p-valuesfor their dummy variables, which indicates that those three makes havedifferent sales probability compared to other makes. Further, make anddealer density interaction terms are tested as well and the interactionbetween Mercedes-Benz and dealer density remain significant. So thosefactors may also be included in embodiment of a DSA model. Although themake and network features may not affect the dealer ranks within eachcohort since each cohort will have the same make and density informationfor different candidate dealers, those factors will affect the expectedrevenue (for example, for each dealer or of an entity getting paid bydealers for leads such as TrueCar) that those three makes have differentfunction of probability of sale compared to other makes.

Besides the demographic features, customer's historical buyingpreferences may also influence one's purchasing behavior. Those types offactors are frequency and volume of transactions, the price levelcategory (low, medium high) in which their transactions fall, previouspurchase history, etc. It is possible a customer brought a 2-door MiniCooper before might want to buy a 4 door car that might be used indifferent circumstance. Therefore, previous purchase choice of make,vehicle body type will be indicators of next purchase as well.

4) Features Describing the Interactions of a Particular Customer and aParticular Vendor (Y_(c,i))

In terms of car purchase, distance is one of the most importantinteraction terms between customer and dealers which influence buyers'decision. This is also true for other large products similar asvehicles. In one embodiment, great circle distance of a dealer may beconsidered. However, there are certain areas with islands and lakes(such as: Great Lakes or Long Beach, N.Y.) that drive distance would bea better indicator of distance compared to great circle distance. Drivetime may also be used in embodiments of a DSA model because the samedrive distance in different locations might relate to different drivetime. For example, 60 miles in a rural area might be related to a 1 hourdrive but 2 hours or even more in a big city. Therefore, drive timewould be a variable that can be equalized to people in differentlocations.

Five drive distance derived dummy variables which indicate if the dealeris located in a certain distance range are developed in order to capturethe sale and distance relationship for certain special cases. It ispossible that the drive time for the closest dealer and furthest dealerdo not differ too much. In those cases, those variables will adjust theweights on minimum drive time so that we do not overestimate the effectof minimum drive time on sale.

In addition, dealer location is also important to sale when the customeris located in the border of two states. Due to the different rules onvehicle regulation and registration, people might tend to go to a dealerlocates in the same state as where they live. “Same State” dummyvariable is therefore include in our model to indicate if the customerand dealer are located in the same state.

In certain cases, certain dealers have outstanding performance incertain ZIP code areas compared to their average performance across allthe ZIP codes. This might be due to some customer populationcharacteristics in certain ZIP code. For example, a ZIP code with highdensity of immigrants whose first language is not English might go to adealership with sale persons that can speak their first language or havea dealer website with their first language. Therefore, a variablemeasure dealer's performance in specific ZIP code is also included inembodiment of the DSA model. It is defined as the number of sale in aspecific customer search ZIP in the past 45 days.

In addition, it is also possible that customer might go to the samedealer if they bought a car from this dealer before. The customerloyalty effect might be even more pronounced in some other industrieswhich provide services rather than actually products. This can be one ofthe most important factors for predict the probability of buying for aparticular customer from a certain vendor.

Operationally, embodiments of a DSA would use the estimated model byfeeding in the values of the independent variables into the model,computing the probabilities for each candidate dealer in a set s, andpresent the dealers with the top probabilities of closing to customer c.

Below is a non-exclusive list of variables that could be utilized in aDSA model:

-   -   Proximity    -   Dealer Close Rate    -   Price    -   Selection    -   Dealer Perks/Benefits    -   Customer Household Attributes    -   Additional Customer Attributes        -   Credit Score        -   Garage Data (current owner of same brand of vehicle, etc.)    -   Additional Dealer Attributes        -   Profile Completeness        -   Dealer Rating        -   Customer Satisfaction Rating        -   Dealer Payment History    -   Transaction Attributes        -   Transaction type (e.g., Lease, Cash, Finance)    -   Trade-In (i.e., whether a trade-in vehicle is involved)

As an example, a DSA may consider all dealers, (i=1, . . . K) sellingthe same trim (t=1, . . . , T) to users in ZIP Code z (z=1, . . . ,Z_(L)) located in the same locality L (zεL if the drive time distancefrom the customer's search ZIP code center to dealer location≦3 hours).The model uses a logistic regression based on the combined data ofinventory, DSA historical data, drive distance, and dealer perks.

$\mspace{79mu} {P_{c} = {{f\left( {P_{s},P_{b}} \right)} = \frac{1}{1 + ^{- {({\theta_{i,t,S} + \delta_{c,t,i}})}}}}}$  whereθ_(i, t, S) = β₀{Features  of  individual  dealers, i} + β₁ × dealer′s  price  within  each  cohort + β₂ × dealer′s  inventory  within  each  cohort + β₃ × dealer′s  perks + β₄ × dealer′s  historical  close  rate + β₅ × dealer′s  defending  champion + β₆ × the  make  of  trim  t  sold  by  dealer  i  is  Mercedes-Benz + β₇ × the  likelihood  of  payment  by  dealer  i  to  a  parent  company + β₈ × if  dealer  i  has  completed  a  profile + β₉ × dealer  i′s  rating + β₁₀ × dealer  i′s  customer  satisfaction{Features  relative  to  other  candidate  dealers, i, S} + β₁₁ × Mercedes-Benz  make  and  density  interaction + β₁₂ × Mazda  make  and  density  interaction + β₁₃ × Volkswagen  make  and  density  interaction + β₁₄ × if  dealer  has  the  minimum  drive  time + β₁₅ × if  dealer  has  lowest  price  within  each  cohort + β₁₆ × difference  between  the  dealer′s  price  and  maximum  price  offset  in  percentage  of  invoice + β₁₇ × difference  between  the  dealer′s  drive  time  and  minimum  drive  time  dealer  δ_(c, t, l) = α_(o){Features  of  individual  Customer, c} + α₁ × the  household  income  of  customer  c + α₂ × the  family  size  of  customer  c + α₃ × customer  c′s  household  size + α₄ × count  of  dealers  within  30  min   drive + α₅ × count  of  dealers  within  1  hour  drive + α₆ × count  of  dealers  within  2  hours  drive + α₇ × if  customer  c  bought  this  type, or  this  make  before + α₈ × customer  c′s  credit  score + α₉ × customer  c′s  garage  data   (if  customer  c  is  a  current  owner  of  same  brand  of  vehicle, etc.) + α₁₀ × transaction  type  (lease, cash, finance, etc.) + α₁₁ × is  a  trade  in  associated  with  the  potential  purchase{Features  describing  the  interaction  of  customer  c  and  dealer  i} + α₁₂ × drive  time  from  customer  c  to  dealer  i + α₁₃ × if  customer  c  bought  from  dealer  i  before + α₁₄ × dealer  i′s  number  of  sales  in  customer  c′s  ZIP  code + α₁₅ × if  dealer  i  is  within  10  miles  of  customer  c + α₁₆ × if  dealer  i  is  within  10-30   miles  of  customer  c + α₁₇ × if  dealer  i  is  within  30-60  miles  of  customer  c + α₁₈ × if  dealer  i  is  within  60-100  miles  of  customer  c + α₁₉ × if  dealer  i  is  within  100-250  miles  of  customer  c + α₂₀ × if  dealer  i  is  in  the  same  state  as  customer  c + ɛ_(c, t, i)

Although each of the above factors may be vital for determining theprobability of closing a sale (P_(c)), embodiments do not require eachfactor to be present in a DSA. For example, in an embodiment the DSA mayinclude the following features of an individual dealer a dealer's pricewithin each cohort (β₁), dealer's inventory within each cohort (β₂),dealer's historical close rate (β₄) and drive time from customer c todealer i (α₁₂) which is a feature describing an interaction of customerc and dealer i.

Although the dealer rank may not change if customer features andcustomer historical preference variables are excluded from the DSA, itmay still be decided to include them in embodiments of the DSA modelbecause the overall probability of closing will be different fordifferent makes. This probability may be applied to calculate the eachdealer's expected revenue and that number will be affect by the choiceof make and customer local dealer density.

A non-limiting example for determining P_(c) and selecting a set ofdealers i for presentation to an interested consumer c will now bedescribed with these example parameters: search zip=“01748” Hopkinton,Mass., Make=“Toyota”, Trim_id=“252006”, Trim=“2012 Toyota RAV4 FWD 4drI4 sport”.

TABLE 1 Parameter Label Estimate Std Pr > ChiSq Odds Ratio Intercept−6.838 0.058 <.0001 Distance DD10 If dealer is within 2.934 0.035 <.000118.802 10 miles DD30 If dealer is within 2.366 0.031 <.0001 10.657 10-30miles DD60 If dealer is within 1.572 0.029 <.0001 4.817 30-60 milesDD100 If dealer is within 0.937 0.028 <.0001 2.552 60-100 miles DD150 Ifdealer is within 0.347 0.029 <.0001 1.414 100-150 miles DD250 if dealeris with Reference 150-250 miles min_DT_I If dealer has min 1.029 0.014<.0001 2.798 drive time r_DT Rescaled drive time 3.642 0.065 <.000138.148 DT_diff Difference between −0.13 0.005 <.0001 0.878 the Max drivetime Price min_price_I If dealer has lowest 0.31 0.015 <.0001 1.363price pct_offset_diff Difference between 7.819 0.258 <.0001 >999.999 themax percent price offset of invoice r_price Rescaled Price 2.247 0.063<.0001 9.456 DT_Price Price, drive time −1.556 0.066 <.0001 0.211interaction Dealer Attributes r_inventry Rescaled new car 0.176 0.017<.0001 1.192 inventory perks If dealer provide 0.065 0.011 <.0001 1.068special service r_defending_champ Rescaled Defending 0.508 0.016 <.00011.662 Champing r_zip_sale Rescaled number of 0.287 0.014 <.0001 1.333sale in requested zip code r_CR Rescaled historical 0.196 0.016 <.00011.217 close rate same state If dealer is in 0.318 0.014 <.0001 1.374 thesame sate make_id27 Mercedes-Benz 1.794 0.189 <.0001 6.014 make_id27_dMercedes, Dealer −0.755 0.082 <.0001 0.47 Density interactionmake_id26_d Mazda, Dealer −0.033 0.01 0.0007 0.967 Density interactionmake_id40_d Volkswagen, Dealer 0.015 0.005 0.0039 1.015 Densityinteraction Network Attributes dealer_cnt_30 Count of Zag dealers −0.1320.005 <.0001 0.877 within 30 min drive dealer_cnt_60 Count of Zagdealers −0.096 0.004 <.0001 0.908 within 1 hour drive dealer_cnt_120Count of Zag dealers −0.12 0.003 <.0001 0.887 within 2 hous drive

As Table 1 exemplifies, weightings or coefficients can be associatedwith features utilized in a DSA model. For example, if a dealer i iscloser to the consumer c (e.g., driving distance or DD is small), thenthat dealer i will have a higher coefficient than another dealer that isfurther from the consumer c. More so, features with a “_i” may bebimodal attributes where the attribute is either added to the DSA ornot. Rescaled features may be the rescaled variables as previouslydescribed. Std represents the standard deviation of a coefficient,Pr>ChiSq may represent if an attribute is important, and the odds ratiorepresents a relative significance of an attribute. Network attributesmay represent the competition or number of other networked dealerswithin a geographical region. Using the above coefficients forattributes, a DSA model may determine P_(s), P_(b).

Table 2 below shows by example attributes for a set of dealers i(dealership_id) that are the closest to the consumer c and that sell aparticular vehicle trim that the consumer c is interested in buying. Inthis non-limiting example, “gcd”, “drive_time”, and “drive_distance” maybe raw data/attributes associated with a distance variable from a dealeri to the consumer c. For example, “gcd” may represent an aerial distance(“as the crow flies”) from a dealer i to the consumer c, “drive_time”may represent the driving time distance in seconds from a dealer i tothe consumer c, and “drive_distance” may represent the driving distancefrom a dealer i to the consumer c. “DD10”, “r_DT”, “Dt_diff” mayrepresent computed attributes of variables for each dealer i within theset S. Igor example, “DD10” may represent a bimodal variable given if adealer is within 10 miles of the consumer c, “r_DT” may represent arescaled drive time relative to the other dealers in the set, and“Dt_diff” may represent a rescaled value between the maximum drive timedistance of a dealer i within the set S and the consumer c.

TABLE 2 Distance Variable dealership_id gcd drive_time drive_distanceDD10 DD30 DD60 DD100 DD150 min_DT_l r_DT DT_diff 3730 6.11 621 10.74 0 10 0 0 1 1.00 0.53 6895 20.69 1560 28.40 0 1 0 0 0 0 0.51 0.27 7708 35.452193 49.37 0 0 1 0 0 0 0.18 0.10 8086 48.16 2537 64.17 0 0 0 1 0 0 0.000.00 8502 21.37 2054 34.36 0 0 1 0 0 0 0.25 0.13 9054 22.67 1315 28.79 01 0 0 0 0 0.64 0.34 9756 26.99 1925 44.44 0 0 1 0 0 0 0.32 0.17

Table 3 below represents attributes of the closet dealers i to consumerc. “Price_offset” represents a difference between a price a dealer i isselling a vehicle and an “invoice” price. Further, “Min_price_i” and“pct_offset_diff” represent computed attributes of variables for eachdealer within the set. More specifically, “Min_price_i” is an attributereflecting which dealer i within the set S has the lowest price, and“pct_offset_diff” represents a price percentage difference between theprice the dealer i is selling the vehicle and the maximum price a dealeri within the set S is selling the vehicle.

TABLE 3 Price Variable dealership_id price_offset invoice min_price_lpct_offset_diff r_price DT_Price 3730 $99 $23,578 0 0.05 0.60 0.60 6895$1,200 $23,578 0 0.00 0.00 0.00 7708 −$400 $23,578 0 0.07 0.87 0.16 8086−$649 $23,578 1 0.08 1.00 0.00 8502 $350 $23,578 0 0.04 0.46 0.12 9054−$200 $23,578 0 0.06 0.76 0.48 9756 −$550 $23,578 0 0.07 0.95 0.30

Table 4 below represent attributes associated with the particularsdealers in Table 3. Notice in this case, dealer “9054” is indicated asthe “defending champion” in the set. Dealer “7708” is indicated ashaving a close rate of 1.00 and not in the same state with the consumerC.

TABLE 4 Dealer Attributes Dealership_id inventory r_inv perksr_defending_champ sale_inzip_last_45 days r_zip_sale close_rate 3730 0.50 0.72 0 1 0.08 6895 0.5 1 0.25 0 1 0.23 7708 0.5 0 0.23 0 1 1.00 80860.5 1 0.39 0 1 0.10 8502 92 0 1 0.12 0 1 0.06 9054 309 1 0 1.00 0 1 0.159756 0.5 0 0.82 0 1 0.09 Dealership_id r_CR same_state make_id27make_id27_d make_id26_d make_id4_d 3730 0.00 1 0 0 0 0 6895 1.00 1 0 0 00 7708 0.20 0 0 0 0 0 8086 0.16 1 0 0 0 0 8502 0.20 1 0 0 0 0 9054 0.481 0 0 0 0 9756 0.07 1 0 0 0 0

Table 5 below represents an example of DSA ranking based on P, which maybe expressed as

$\mspace{79mu} {\frac{e^{z}}{e^{z} + 1} = {\frac{1}{1 + e^{- z}}\mspace{14mu} {where}}}$Z = −6.8384 + DD 10^()2.934 + DD 30^()2.3662 + DD 60^()1.5721 + DD 100^()0.9368 + DD 150^()0.3467 + min_DT_I^()1.0288 + min_price_I^()0.3095 + 0.1758^()r_inventory + 0.0654^()perks + 3.6415^()r_DT + 0.5079^()r_defending_champ + 2.2467^()r_price − 0.1204^()dealer_cnt_120 − 1.5562^()DT_Price + 0.2872^()r_zip_sale + 0.3175^()same_state + 0.1961^()r_CR − 0.1303^()DT_diff + 7.819^()pct_offset_diff − 0.1316^()dealer_cnt_30 + 1.7942^()make_id 27 − 0.0964^()dealer_cnt_60 − 0.0332^()make_id 26_d − 0.7554^()make_id 27_d − 0.0147^()make_id 40_d

TABLE 5 DSA dealership_id P_(c) Rank Display 3730 0.512 1 Yes 6895 0.0304 No 7708 0.022 6 No 8086 0.025 5 No 8502 0.012 7 No 9054 0.212 2 Yes9756 0.064 3 Yes

In this non-limiting example, dealers “3730”, “9054”, and “9756” fromTable 4 are selected for presentation to the consumer c based on theirDSA ranking. FIG. 5 depicts an example where the selected dealers may bepresented or displayed on a display of a client device associated withthe potential customer. As one skilled in the art will appreciate,although dealership “8086” had the lowest price for the product, it wasnot included in the highest ranking dealerships because of otherattributes, such as distance to the customer.

In some embodiments, the potential revenue that a parent origination mayreceive as a result of a transaction between a dealer i and a consumer cmay be taken into consideration. For example, suppose an expectedrevenue associated with dealer “9756” is substantially less than anexpected revenue associated with dealer “6895”, dealer “6895” may beselected for presentation to the consumer c, even though dealer “9756”has a higher DSA ranking than dealer “6895”.

In some embodiments, an individual dealer's expected revenue ER can becalculated using the following:

ER=P _(c) ·R _(g)·θ_(n)

where ER represents an expected revenue from a lead, P_(c) represents aprobability of closing the sale, R_(g) represents a gross revenuegenerated from a sale, and θ₇, represents a net revenue adjustment. Inone embodiment, gross revenue R_(g) may be generated from a linearregression model. In various embodiments, gross revenue R_(g) may bedetermined depending on a business model of a parent company, amultiplicative model, or any other type of model.

As a non-limiting example, gross revenue R_(g) may be expressed asfollows:

R _(g) =Xβ

where the β coefficients are determined from the least-squaresregression and the X matrix consists of variables chosen to isolatedifferences in estimated revenue.

Specifically, the revenue equation may be expressed as follows:

R_(g) = β₀ + β_(1 i) × indicator  for  make  of  vehicle  being  purchased, ∀i, where  i  represents  the  vehicle  make + β₂ × (if  transaction  type = Lease) + β₃ × (if  transaction  type = Finance)β₄ × (if  trade-in  present) + β₅ × (indicator  for  new  car) + β_(6 k) × (indicator  for  affinity  partner)∀k,      where  k  represents  the  affinity  partner

In one embodiment, all gross revenues thus calculated are multiplied bytheir net payment ratio to account for differences in payment likelihoodper dealership. To accomplish this, a separate multiplication factor,θ_(n), can be applied, where θ_(n) is to be estimated as the net paymentratio. Note that θ_(n) may be calculated based on a series of variablesin a linear regression, or may be a simpler factor, such as a rolling12-month window of payment history for the given dealer. For instance,for dealer Z, the total of the bills charged (by an intermediary entitysuch as the TrueCar system implementing the invention disclosed herein)to dealer Z over the past 12 months might be $10000, but their totalpayments (due to charge backs and/or failure to pay, etc.) might haveonly been $7800. So, for dealer Z in this example, their net paymentratio would be θ_(n)=0.78.

These components can then be put together (e.g., by a DSA module) toobtain the expected revenue ER (ER=P_(c)·R_(g)·θ_(n)) that theintermediary can anticipate by displaying a certain dealer to thisparticular consumer based on the customer's (lead) specific vehiclerequest.

Therefore, it is not only the consumer who might benefit from the DSAdisclosed herein by reducing searching time and money but additionallyan intermediary may also benefit. Furthermore, vendors can also benefitfrom the DSA disclosed herein. For example, a dealer can adjust theirspecific characteristic in order to increase close rate, better managetheir inventory by reducing storage cost, and/or increase stock byavoiding potential loss of short of products.

In some embodiments of the DSA, each dealer's own expected revenue inlocal area L (within a 60 ml driving distance radius) can be computedusing the following formula:

${ER}_{i,L} = \left\lbrack {\sum\limits_{t = 1}^{T}\; {\sum\limits_{s \geq t}^{T}\; {\sigma_{t,s}n_{i,s}\pi_{i,s}{\sum\limits_{z = 1}^{z_{L}}\; {P_{i,t,z}d_{t,z}}}}}} \right\rbrack$

where d_(t,z) is the demand for trim t in ZIP Code z; n_(i,t) is theinventory of trim t at dealer i; π_(i,t) is the revenue per closed sale(which may be constant across all trims/dealer pairs or different), andσ_(t,s) reflects the substitutability across trims. For example, if auser becomes a prospect for vehicle trim A, there is a possibility thathe/she may actually buy vehicle trim B. The substitutability occurs whenthe buyer is presented with an onsite inventory that may differ fromhis/her online searches.

Independent variables that might influence the sale of a vehicle areincluded in the variable selection process. Price offset(s) aretransformed to the percentage over the invoice price to let the priceoffset at same scale among different car makers. Dealer related featuresare rescaled within one cohort to reflect their effect compared to otherdealers. Certain non-rescaled variables can also be included to avoidoverestimating the best price or closest dealer effect on sale when thebest and worst price does not differ too much or the closest or furthestdealers are both located in about the same rang of distance. The finalmodel(s) can be chosen by maximizing the percentage of concordance inthe logistic regression so that the resulting estimate probability ofsale can be the most consistent with the actual observed sales actionsgiven the dealers displayed historically.

Various types of cross validations may be applied to the DSA model. Forexample, the final dataset can be randomly split into two groups for A-Btesting and also separated into two parts according to two time windows.

Embodiments of the DSA disclosed herein can also be applied to thedealer side by ranking the customers according to the probability ofbuying a vehicle from the dealer. In certain embodiments, all the dealerfeatures can be fixed and the probability of sale can be based on thecustomer's features such as: their household income, gender, and carmake choice, distance to the dealer, customer loyalty, customer localdealer density and so on. Demographic information such as averageincome, average household size, and historical dealer preference for thepopulation from the same ZIP code would be a good estimation input foreach unique cohort. The probability of sale of a trim t to a certaincustomer c among a group of interested customer U can be calculated bythe following function:

$P_{b} = {P_{c,t} = \frac{1}{1 + ^{- \delta_{c,t}}}}$

Examples of potential variables are as follow:

δ_(c,t)=α_(o)

-   -   {Features of individual customer, c}    -   α₁× the household income of customer c    -   α₂× the family size of customer c    -   α₃× customer c's household size    -   α₄× customer's local dealer density    -   α₅× if the customer will trade in an old car    -   α₆× the payment type of the customer c (e.g. cash or finance)    -   {Features describing the interaction of customer c and dealer}    -   α₇× distance from customer c to the dealer    -   α₈× if customer c bought from the dealer before    -   α₉× dealer's number of sales in customer c's ZIP code    -   α₁₀× if customer c is in the same state as the dealer    -   +ε_(c,t,i)

Once the customers are ranked by the probability of buying from thedealer, the sales person can better allocated their effect and time byreaching those customers with a higher chance of buying first. Moreadvertising and marketing effort should target at those population andareas with a high probability of buying.

FIG. 7 depicts an example embodiment of a method of using a DSA model.Map data 700 may be a data mapping between dealer information 710 andcustomer information 720 created from a plurality of sources, such asinformation associated with dealers 710 and information associated withpotential customers 720.

Dealer information 710 may include information that was provided by adealer 725, observed performance of dealers 730, and dealer informationrelative to other dealers 735. Dealer provided information 725 may beincluded information such as a location, perks, inventory, and pricingof products sold by each respective dealer in a set of dealers. Thisinformation may be provided by and/or communicated from each of theindividual dealers. However, if a dealer is not in a network or does nototherwise provide dealer information 725, then dealer information 725may be gathered or obtained via a web search, from manufacturer data, orany other source.

Observed performance of dealers 730 may be associated with performanceof an individual dealer such as a dealer's close rate. Initially,observed performance of dealers 730 may be set as a research data set ormodule, such as the DSA model as discussed above. As more data isgathered or collected and communicated via feedback loop 780, thisinformation may be used to update and/or modify observed performance ofdealers 730. More specifically, the research data set may be a set ofcoefficients and variables initially based on empirical data, and basedon further interactions with potential customers and dealers thecoefficients and variables may be adjusted, updated and/or modified.Accordingly, as more data such as dealer information 710 and/or customerinformation 720 is accumulated, an updated DSA model may be determined,which may adjust the observed performance of dealers 730.

Dealer information 710 may also include dealer information relative toother dealers (competition) 735. This information may be based in parton dealer provided information 725 associated with dealers that arestored in a database and online party third map services. This data maybe normalized data of one dealer within a geographic region againstother dealers within the geographic region. For example, if a firstdealer has a price for a specific product, an incremental relationshipmay be determined comparing the price of the specific product at thefirst dealer to a price of the specific product at other dealers withinthe geographic region. Similarly, dealer information relative to otherdealers 725 may include a normalized drive time to each dealer within ageographic region. The geographic region may be either a radial distancefrom the potential customer, a geographic region associated with a drivetime from a potential customer, and/or a geographic region including athreshold number of potential dealers. For example, the geographicregion may include a threshold number of dealers within a drive timedistance from the potential customer. An example range of such athreshold number may be from 6 to 10. In an embodiment, dealerinformation relative to other dealers may be updated dynamically, on adaily, weekly, and/or monthly basis.

Customer information 720 may be information associated with potentialcustomers. For example, customer information 720 may include informationpertaining to customer dealer relationships 740, such a drive time froma potential customer to a specific dealer or a number of alternativedealers within a geographic region associated with a location of thepotential customer.

Customer information 720 may also include information customer providedinformation 745, such as a location of the potential customer, an incomeof the potential customer, and vehicle preferences that may includemake/model/trim of the potential customer. In an embodiment, customerinformation 720 may be obtained by a potential customer directlyentering data in a web form on a website. In another embodiment,customer information 720 may be obtained via a partnership organizationsuch as yahoo® or AAA®, which may have previously obtained and mappedcustomer information 720 such as age, gender, income and location from apotential customer. In another embodiment, customer information 720 maybe obtained via a third party. In this embodiment, any informationobtained from a customer such as demographic information, contactinformation and the like may be transmitted to the third party. Thethird party may then map or compare the transmitted customer information720 against their database and communicate any additional customerinformation 720.

Research data set 750 may include a researched data set based onstatistical methodology associated with dealer information 710 andcustomer information 720. Regression coefficients 750 may then be setbased on the statistical methodology to determine research data set 750and a logistic regression approach. More so, regression coefficients 750may be set at a moment in time, however as dealer information 710 andcustomer information 720 are updated, modified or changed research dataset 750 and regression coefficients 760 may correspondingly be modified.

Front end 765 represents a front end use of a DSA model associated witha specific potential customer. Using the determined regressioncoefficients 750, the DSA model may determine scores for customer/dealercombinations 770 for each dealer within a set. Then, in the front end765, the highest scoring dealers 775 may be presented to the customer775. Furthermore, information associated with regression coefficients760 may then be communicated on feedback loop 780 to update and/ormodify the observed performance of dealers 730.

FIG. 8 depicts an example embodiment for determining a drive timedistance for a dealer within a network. A dealer may supply the networkwith the address of the dealer 820. Utilizing an online geocoding APIservice 810, the geocoded address for the dealer 820 may be determined.The geocoded address of the dealer 820 including the dealer's latitudemay then be stored in a database 830. More so, database 830 may includeeach dealer's within the network geocoded address. A database mayinclude zip-codes centroids 840 associated with zip codes surroundingthe dealer. Using an online directions API service 850 and the zip-codecenter centroids 840, driving directions from the zip-code centroids 840from the geocoded address of the deal stored in database 830 may bedetermined. Further, the number driving directions to unique zip-codecentroids from the geocoded address of the dealer may be based onempirical evidence associated with the geographic location of thedealer. For example, in one embodiment, driving directions 860 from adealer may be determined for 6-10 zip-code centroids. Utilizing thedriving directions 860, a drive distance/time between the zip-codecentroid/dealer pairs 870 may be determined. In further embodiments,this procedure may be repeated each time a new dealer is added to thenetwork.

FIG. 9 depicts another example of how a consumer may interact with anembodiment implementing the DSA disclosed herein through a userinterface on a client device. Webpage 900 may include forms 910associated with customer information that may be entered or completed bya user, the closest dealers TrueCar certified dealers to the potentialcustomer, and a target price for a specific trim of a vehicle in ageographic region.

Although the invention has been described with respect to specificembodiments thereof, these embodiments are merely illustrative, and notrestrictive of the invention. The description herein of illustratedembodiments of the invention, including the description in the Abstractand Summary, is not intended to be exhaustive or to limit the inventionto the precise forms disclosed herein (and in particular, the inclusionof any particular embodiment, feature or function within the Abstract orSummary is not intended to limit the scope of the invention to suchembodiment, feature or function). Rather, the description is intended todescribe illustrative embodiments, features and functions in order toprovide a person of ordinary skill in the art context to understand theinvention without limiting the invention to any particularly describedembodiment, feature or function, including any such embodiment featureor function described in the Abstract or Summary. While specificembodiments of, and examples for, the invention are described herein forillustrative purposes only, various equivalent modifications arepossible within the spirit and scope of the invention, as those skilledin the relevant art will recognize and appreciate. As indicated, thesemodifications may be made to the invention in light of the foregoingdescription of illustrated embodiments of the invention and are to beincluded within the spirit and scope of the invention. Thus, while theinvention has been described herein with reference to particularembodiments thereof, a latitude of modification, various changes andsubstitutions are intended in the foregoing disclosures, and it will beappreciated that in some instances some features of embodiments of theinvention will be employed without a corresponding use of other featureswithout departing from the scope and spirit of the invention as setforth. Therefore, many modifications may be made to adapt a particularsituation or material to the essential scope and spirit of theinvention.

Reference throughout this specification to “one embodiment”, “anembodiment”, or “a specific embodiment” or similar terminology meansthat a particular feature, structure, or characteristic described inconnection with the embodiment is included in at least one embodimentand may not necessarily be present in all embodiments. Thus, respectiveappearances of the phrases “in one embodiment”, “in an embodiment”, or“in a specific embodiment” or similar terminology in various placesthroughout this specification are not necessarily referring to the sameembodiment. Furthermore, the particular features, structures, orcharacteristics of any particular embodiment may be combined in anysuitable manner with one or more other embodiments. It is to beunderstood that other variations and modifications of the embodimentsdescribed and illustrated herein are possible in light of the teachingsherein and are to be considered as part of the spirit and scope of theinvention.

In the description herein, numerous specific details are provided, suchas examples of components and/or methods, to provide a thoroughunderstanding of embodiments of the invention. One skilled in therelevant art will recognize, however, that an embodiment may be able tobe practiced without one or more of the specific details, or with otherapparatus, systems, assemblies, methods, components, materials, parts,and/or the like. In other instances, well-known structures, components,systems, materials, or operations are not specifically shown ordescribed in detail to avoid obscuring aspects of embodiments of theinvention. While the invention may be illustrated by using a particularembodiment, this is not and does not limit the invention to anyparticular embodiment and a person of ordinary skill in the art willrecognize that additional embodiments are readily understandable and area part of this invention.

Embodiments discussed herein can be implemented in a computercommunicatively coupled to a network (for example, the Internet),another computer, or in a standalone computer. As is known to thoseskilled in the art, a suitable computer can include a central processingunit (“CPU”), at least one read-only memory (“ROM”), at least one randomaccess memory (“RAM”), at least one hard drive (“HD”), and one or moreinput/output (“I/O”) device(s). The I/O devices can include a keyboard,monitor, printer, electronic pointing device (for example, mouse,trackball, stylist, touch pad, etc.), or the like.

ROM, RAM, and HD are computer memories for storing computer-executableinstructions executable by the CPU or capable of being complied orinterpreted to be executable by the CPU. Suitable computer-executableinstructions may reside on a computer readable medium (e.g., ROM, RAM,and/or HD), hardware circuitry or the like, or any combination thereof.Within this disclosure, the term “computer readable medium” or is notlimited to ROM, RAM, and HD and can include any type of data storagemedium that can be read by a processor. For example, a computer-readablemedium may refer to a data cartridge, a data backup magnetic tape, afloppy diskette, a flash memory drive, an optical data storage drive, aCD-ROM, ROM, RAM, HD, or the like. The processes described herein may beimplemented in suitable computer-executable instructions that may resideon a computer readable medium (for example, a disk, CD-ROM, a memory,etc.). Alternatively, the computer-executable instructions may be storedas software code components on a direct access storage device array,magnetic tape, floppy diskette, optical storage device, or otherappropriate computer-readable medium or storage device.

Any suitable programming language can be used to implement the routines,methods or programs of embodiments of the invention described herein,including C, C++, Java, JavaScript, HTML, or any other programming orscripting code, etc. Other software/hardware/network architectures maybe used. For example, the functions of the disclosed embodiments may beimplemented on one computer or shared/distributed among two or morecomputers in or across a network. Communications between computersimplementing embodiments can be accomplished using any electronic,optical, radio frequency signals, or other suitable methods and tools ofcommunication in compliance with known network protocols.

Different programming techniques can be employed such as procedural orobject oriented. Any particular routine can execute on a single computerprocessing device or multiple computer processing devices, a singlecomputer processor or multiple computer processors. Data may be storedin a single storage medium or distributed through multiple storagemediums, and may reside in a single database or multiple databases (orother data storage techniques). Although the steps, operations, orcomputations may be presented in a specific order, this order may bechanged in different embodiments. In some embodiments, to the extentmultiple steps are shown as sequential in this specification, somecombination of such steps in alternative embodiments may be performed atthe same time. The sequence of operations described herein can beinterrupted, suspended, or otherwise controlled by another process, suchas an operating system, kernel, etc. The routines can operate in anoperating system environment or as stand-alone routines. Functions,routines, methods, steps and operations described herein can beperformed in hardware, software, firmware or any combination thereof.

Embodiments described herein can be implemented in the form of controllogic in software or hardware or a combination of both. The controllogic may be stored in an information storage medium, such as acomputer-readable medium, as a plurality of instructions adapted todirect an information processing device to perform a set of stepsdisclosed in the various embodiments. Based on the disclosure andteachings provided herein, a person of ordinary skill in the art willappreciate other ways and/or methods to implement the invention.

It is also within the spirit and scope of the invention to implement insoftware programming or code an of the steps, operations, methods,routines or portions thereof described herein, where such softwareprogramming or code can be stored in a computer-readable medium and canbe operated on by a processor to permit a computer to perform any of thesteps, operations, methods, routines or portions thereof describedherein. The invention may be implemented by using software programmingor code in one or more general purpose digital computers, by usingapplication specific integrated circuits, programmable logic devices,field programmable gate arrays, optical, chemical, biological, quantumor nanoengineered systems, components and mechanisms may be used. Ingeneral, the functions of the invention can be achieved by any means asis known in the art. For example, distributed, or networked systems,components and circuits can be used. In another example, communicationor transfer (or otherwise moving from one place to another) of data maybe wired, wireless, or by any other means.

A “computer-readable medium” may be any medium that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, system ordevice. The computer readable medium can be, by way of example only butnot by limitation, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, system, device,propagation medium, or computer memory. Such computer-readable mediumshall generally be machine readable and include software programming orcode that can be human readable (e.g., source code) or machine readable(e.g., object code). Examples of non-transitory computer-readable mediacan include random access memories, read-only memories, hard drives,data cartridges, magnetic tapes, floppy diskettes, flash memory drives,optical data storage devices, compact-disc read-only memories, and otherappropriate computer memories and data storage devices. In anillustrative embodiment, some or all of the software components mayreside on a single server computer or on any combination of separateserver computers. As one skilled in the art can appreciate, a computerprogram product implementing an embodiment disclosed herein may compriseone or more non-transitory computer readable media storing computerinstructions translatable by one or more processors in a computingenvironment.

A “processor” includes any, hardware system, mechanism or component thatprocesses data, signals or other information. A processor can include asystem with a general-purpose central processing unit, multipleprocessing units, dedicated circuitry for achieving functionality, orother systems. Processing need not be limited to a geographic location,or have temporal limitations. For example, a processor can perform itsfunctions in “real-time,” “offline,” in a “batch mode,” etc. Portions ofprocessing can be performed at different times and at differentlocations, by different (or the same) processing systems.

It will also be appreciated that one or more of the elements depicted inthe drawings/figures can also be implemented in a more separated orintegrated manner, or even removed or rendered as inoperable in certaincases, as is useful in accordance with a particular application.Additionally, any signal arrows in the drawings/figures should beconsidered only as exemplary, and not limiting, unless otherwisespecifically noted.

As used herein, the terms “comprises,” “comprising,” “includes,”“including,” “has,” “having,” or any other variation thereof, areintended to cover a non-exclusive inclusion. For example, a process,product, article, or apparatus that comprises a list of elements is notnecessarily limited only those elements but may include other elementsnot expressly listed or inherent to such process, process, article, orapparatus.

Furthermore, the term “or” as used herein is generally intended to mean“and/or” unless otherwise indicated. For example, a condition A or B issatisfied by any one of the following: A is true (or present) and B isfalse (or not present), A is false (or not present) and B is true (orpresent), and both A and B are true (or present). As used herein,including the claims that follow, a term preceded by “a” or “an” (and“the” when antecedent basis is “a” or “an”) includes both singular andplural of such term, unless clearly indicated within the claim otherwise(i.e., that the reference “a” or “an” clearly indicates only thesingular or only the plural). Also, as used in the description hereinand throughout the claims that follow, the meaning of “in” includes “in”and “on” unless the context clearly dictates otherwise. The scope of thepresent disclosure should be determined by the following claims andtheir legal equivalents.

1. A system comprising: a server computer; and at least onenon-transitory computer readable medium storing instructionstranslatable by the server computer to perform: for each vendor in a setof vendors: determining a probability of a vendor selling a product to auser interested in purchasing the product (P_(s)) given that the vendoris presented in the set of vendors; determining a probability of theuser buying the product from the vendor (P_(b)) given a historicalpreference of the user; and determining a probability of closing a sale(P_(c)) where P_(c) is a function of P_(s) and P_(b); selecting one ormore vendors from the set of vendors based on P_(c) associatedtherewith; and presenting the one or more vendors to the user interestedin purchasing the product via a user interface on a user deviceassociated with the user, the user device being communicativelyconnected to the server computer over a network connection.
 2. Thesystem of claim 1, wherein P_(s) comprises a first component expressingfeatures associated with the vendor and a second component expressingthe features relative to other vendors in the set of vendors.
 3. Thesystem of claim 2, wherein the features comprise a historical salesperformance rate of the vendor.
 4. The system of claim 1, wherein P_(b)comprises a first component expressing features associated with the userand a second component expressing interactions between the user and thevendor.
 5. The system of claim 4, wherein the first component comprisesa socioeconomic status of the user.
 6. The system of claim 4, whereinthe second component is associated with a drive time between the userand the vendor.
 7. The system of claim 1, wherein each vendor in the setis within a distance to the user, the distance being less than athreshold or within a geographical boundary.
 8. The system of claim 1,wherein the selecting the one or more vendors from the set is based atleast in part on an expected revenue of each vendor in a specific area.9. A method comprising: for each vendor in a set of vendors: determininga probability of a vendor selling a product to a user interested inpurchasing the product (P_(s)) given that the vendor is presented in theset of vendors; determining a probability of the user buying the productfrom the vendor (P_(b)) given a historical preference of the user; anddetermining a probability of closing a sale (P_(c)) where P_(c) is afunction of P_(s) and P_(b); selecting one or more vendors from the setof vendors based on P_(c) associated therewith, wherein the selecting isperformed by a computer; and presenting the one or more vendors to theuser interested in purchasing the product via a user interface on a userdevice associated with the user, the user device being communicativelyconnected to the computer over a network connection.
 10. The method ofclaim 9, wherein P_(s) comprises a first component expressing featuresassociated with the vendor and a second component expressing thefeatures relative to other vendors in the set of vendors.
 11. The methodof claim 10, wherein the features comprise a historical salesperformance rate of the vendor.
 12. The method of claim 9, wherein P_(b)comprises a first component expressing features associated with the userand a second component expressing interactions between the user and thevendor.
 13. The method of claim 12, wherein the first componentcomprises a socioeconomic status of the user.
 14. The method of claim12, wherein the second component is associated with a drive time betweenthe user and the vendor.
 15. The method of claim 9, wherein each vendorin the set is within a distance to the user, the distance being lessthan a threshold or within a geographical boundary.
 16. The method ofclaim 9, wherein the selecting the one or more vendors from the set isbased at least in part on an expected revenue of each vendor in aspecific area.
 17. A computer program product comprising at least onenon-transitory computer readable medium storing instructionstranslatable by a computer to perform: for each vendor in a set ofvendors: determining a probability of a vendor selling a product to auser interested in purchasing the product (P_(s)) given that the vendoris presented in the set of vendors; determining a probability of theuser buying the product from the vendor (P_(b)) given a historicalpreference of the user; and determining a probability of closing a sale(P_(c)) where P_(c) is a function of P_(s) and P_(b); selecting one ormore vendors from the set of vendors based on P_(c) associatedtherewith; and presenting the one or more vendors to the user interestedin purchasing the product via a user interface on a user deviceassociated with the user, the user device being communicativelyconnected to the computer over a network connection.
 18. The computerprogram product of claim 18, wherein the selecting the one or morevendors from the set is based at least in part on an expected revenue ofeach vendor in a specific area.
 19. The computer program product ofclaim 18, wherein P_(s) comprises a first component expressing featuresassociated with the vendor and a second component expressing thefeatures relative to other vendors in the set of vendors.
 20. Thecomputer program product of claim 18, wherein P_(b) comprises a firstcomponent expressing features associated with the user and a secondcomponent expressing interactions between the user and the vendor.